home *** CD-ROM | disk | FTP | other *** search
- var indexMe = new Array();
-
- function handleLayer(layid) {
-
- if (document.layers)
- return(document.layers[layid]);
- else if (document.all) {
- layer = eval('document.all.' + layid + '.style');
- return(layer);
- }
- else
- return(null);
- }
-
- function makeLayer(layid, lposx, lposy, lsizx, lsizy, layon, incode) {
-
- var indx = indexMe.length;
- var layer;
-
- indexMe[indx] = layid;
-
- if (document.layers) {
- document.writeln('<layer name="' + layid + '" left=' + lposx + ' top=' + lposy + ' width=' + lsizx + ' height=' + lsizy + ' visibility=' + (layon ? '"show"' : '"hide"') + ' z-index=' + indx + '>');
- document.writeln(incode);
- document.writeln('</layer>');
- layer = handleLayer(layid);
- layer.width = lsizx;
- layer.height = lsizy;
- }
-
- if (document.all) {
- document.writeln('<div id="' + layid + '" style="position:absolute; overflow:none; left:' + lposx + 'px; top:' + lposy + 'px; width:' + lsizx + 'px; height:' + lsizy + 'px;' + ' visibility:' + (layon ? 'visible;' : 'hidden;') + ' z-index:' + indx + '">');
- document.writeln(incode);
- document.writeln('</div>');
- }
-
- clpLayer(layid, 0, 0, lsizx, lsizy);
- }
-
-
-
- function clpLayer(layid, lx, ly, rx, ry) {
-
- var layer = handleLayer(layid);
-
- if (document.layers) {
- layer.clip.left = lx;
- layer.clip.top = ly;
- layer.clip.right = rx;
- layer.clip.bottom = ry;
- }
- if (document.all)
- layer.clip = 'rect(' + ly + ' ' + rx + ' ' + ry + ' ' + lx +')';
- }
-
-
- var animRate = 25;
-
- function transMove(layid, x, y, step, postex) {
-
- var layer = handleLayer(layid);
-
- if (layer.transID && layer.transID != null)
- clearTimeout(layer.transID);
-
- if (!postex)
- postex = "";
-
- x = exPand(x);
- y = exPand(y);
- step = exPand(step);
- postex = exPand(postex);
-
- var upl = Math.max(x.length, Math.max(y.length, Math.max(step.length, postex.length)));
- while (x.length < upl)
- x[x.length] = x[x.length - 1];
- while (y.length < upl)
- y[y.length] = y[y.length - 1];
- while (step.length < upl)
- step[step.length] = step[step.length - 1];
- while (postex.length < upl)
- postex[postex.length] = postex[postex.length - 1];
-
- makeMove(layid, x, y, step, postex);
- }
-
- function makeMove(layid, x, y, step, postex) {
-
- var layer = handleLayer(layid);
- var hrzn, vert, left, top, steps;
-
- if (document.layers) {
- hrzn = x[0] - layer.left;
- vert = y[0] - layer.top;
- left = layer.left;
- top = layer.top;
- }
-
- if (document.all) {
- hrzn = x[0] - layer.pixelLeft;
- vert = y[0] - layer.pixelTop;
- left = layer.pixelLeft;
- top = layer.pixelTop;
- }
-
- steps = (Math.max(Math.abs(hrzn), Math.abs(vert)) / step[0]) * (1000 / animRate);
-
- if (steps <= 0)
- return;
-
- layer.transX = x.slice(1, x.length);
- layer.transY = y.slice(1, y.length);
- layer.transStep = step.slice(1, step.length);
- layer.transCode = postex.slice(1, postex.length);
-
- layer.transLeft = left;
- layer.transTop = top;
- layer.transDx = hrzn / steps;
- layer.transDy = vert / steps;
- layer.transFinalX = x[0];
- layer.transFinalY = y[0];
- layer.transSteps = Math.floor(steps);
- layer.transAction = postex[0];
-
- transStep(layid);
- }
-
- function transStep(layid) {
-
- var layer = handleLayer(layid);
-
- layer.transLeft += layer.transDx;
- layer.transTop += layer.transDy;
- if (document.layers)
- layer.moveTo(layer.transLeft, layer.transTop);
- if (document.all) {
- layer.left = layer.transLeft;
- layer.top = layer.transTop;
- }
-
- if (layer.transSteps-- > 0)
- layer.transID = setTimeout('transStep("' + layid + '")', animRate);
-
- else {
- if (document.layers)
- layer.moveTo(layer.transFinalX, layer.transFinalY);
- if (document.all) {
- layer.left = layer.transFinalX;
- layer.top = layer.transFinalY;
- }
-
- layer.transID = null;
- if (layer.transAction != "")
- eval(layer.transAction);
-
- if (layer.transX.length > 0)
- makeMove(layid, layer.transX, layer.transY, layer.transSpeed, layer.transCode);
- else
- layer.transID = null;
- }
- }
- function exPand(a) {
-
- var temp;
-
- if (!a.join) {
- temp = a;
- a = new Array();
- a[0] = temp;
- }
- return a;
- }